home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 016a / chgboot.zip / CHGBOOT.TXT < prev    next >
Text File  |  1991-09-08  |  29KB  |  710 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.                   ChgBoot:  Change Boot-Up Configuration v1.0
  8.  
  9.  
  10.  
  11.  
  12.  
  13.                            Released August 29, 1991
  14.  
  15.  
  16.  
  17.  
  18.  
  19.                             Written by S. W. Lange
  20.  
  21.                                  602 Dusk Ave.
  22.                                 Azle, TX  76020
  23.                     (817) 444-4857 (6:00 - 10:00 p.m. CST)
  24.  
  25.  
  26.  
  27.  
  28.  
  29.           Program and Documentation are Copyright (c) 1991 by S. W. Lange.
  30.                                All rights reserved.
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.           Portions Copyright Borland, International.  ChgBoot is written
  38.                                 using Borland C++.
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.    ChgBoot Registration Form:    S. W. Lange
  46.                                  602 Dusk Ave.
  47.                                  Azle, TX  76020
  48.  
  49.  
  50.    ChgBoot v1.0                               Quantity    Price
  51.  
  52.    Disk                       ($15.00/Copy)    _______   __________
  53.  
  54.         Total enclosed                                   __________
  55.  
  56.    Please make payment by check or money order (in US funds) payable
  57.    to 'S. W. Lange'.
  58.  
  59.    Please specify the preferred diskette size:
  60.  
  61.    ___ 5.25" 360KB   ___ 3.50" 720KB
  62.  
  63.  
  64.    Name    ________________________________________________________
  65.  
  66.    Company ________________________________________________________
  67.  
  68.    Address ________________________________________________________
  69.  
  70.            ________________________________________________________
  71.  
  72.    Phone   ________________________________________________________
  73.  
  74.  
  75.    Where did you get ChgBoot   ____________________________________
  76.  
  77.    ________________________________________________________________
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.                               ChgBoot Quick Start
  85.  
  86. In order to begin using ChgBoot as quickly as possible, the following steps
  87. should be taken:
  88.  
  89.      1.  Ensure that you have a bootable floppy diskette with a copy of your
  90.          current Autoexec.Bat and Config.Sys files.  If you have any
  91.          trouble implementing different machine configurations using the
  92.          ChgBoot program, you can reboot using the floppy disk.
  93.      2.  Rename the Autoexec.Bat and Config.Sys files located in the root
  94.          directory of the boot-up drive (i.e., C:\) to Autoexec.Cfg and
  95.          Config.Cfg.
  96.      3.  Copy the ChgBoot.Exe and QuikStrt.Cfg to the root directory of
  97.          the boot-up drive.
  98.      4.  Rename QuikStrt.Cfg to ChgBoot.Cfg.
  99.      5.  Type ChgBoot.
  100.  
  101. The QuikStrt.Cfg file makes use of the [Include] keyword to include your
  102. previous Autoexec.Bat and Config.Sys files.  This will allow the ChgBoot
  103. program to run with one configuration.  More can be added using the
  104. configuration format shown in the file Sample.Cfg.
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.                       Change Boot-Up Configuration Manual
  112.  
  113. I.  Introduction
  114.  
  115. The ChgBoot configuration program is used to manage multiple machine
  116. configurations automatically.  The working parts of the program consist of
  117. two files, the executable file ChgBoot.Exe and the configuration file
  118. ChgBoot.Cfg.  The configuration file contains the multiple boot-up system
  119. files as well as program default settings and macro definitions.  The program
  120. operates by writing selected boot-up files into the root directory and then
  121. rebooting the machine.  Besides automatically rebooting the machine in a new
  122. configuration, the program can also be made to manage the autoexec.bat and
  123. config.sys files in other ways.  The program makes use of macro definitions
  124. within the system configuration files to ease the management of multiple
  125. system configurations and allow simpler editing of system configurations.  If
  126. it is necessary to update a command that is common to a number of system
  127. configurations, it is only necessary to define a macro for that command and
  128. then modify the macro to update all of the system configurations.  Each system
  129. configuration may contain a help line that is displayed with the menu item to
  130. further describe the configuration.  If desired, the hidden or read-only file
  131. attribute bits can be set in order to hide the system files or protect them
  132. from being erased.  The program can also be made to keep a back-up copy of the
  133. most recent set of configuration files used.  The program can also be driven
  134. from the command line, bypassing the menu screen if the user knows which
  135. configuration is desired.
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142. II.  Description Of Operation
  143.  
  144. A.  Features
  145.  
  146. 1.  Use Of Macros In Configuration File:
  147.  
  148.      The program has the ability to use macro definitions in the configuration
  149.      file to manage text strings that are to be written to the Autoexec.Bat
  150.      and Config.Sys files.  This allows a user to more easily manage
  151.      multiple machine configurations.
  152.  
  153. 2.  Use of Include Directives In Configuration File:
  154.  
  155.      The program can be setup to have a single configuration file with all of
  156.      the boot-up configurations in that file.  Or, the configuration file can
  157.      contain include directives to allow the inclusion of other text files
  158.      that are to be written out to the appropriate system files as needed.
  159.      In this way, the user can organize his or her machine configurations in
  160.      the most desirable way to increase productivity.
  161.  
  162. 3.  Run DOS Commands Or Programs Prior To Rebooting:
  163.  
  164.      Another feature of the program is the ability to run any DOS commands or
  165.      programs prior to rebooting the machine.  This feature might be used to
  166.      force a disk cache to be automatically flushed, etc., before reboot.
  167.  
  168. 4.  Run ChgBoot From Any Drive Or Directory:
  169.  
  170.      By default, the ChgBoot program wants to be run from the root directory
  171.      of the boot drive.  But, the program can be run from another drive or
  172.      directory and can use another name for the configuration file besides
  173.      the default name of ChgBoot.Cfg.
  174.  
  175. 5.  Default Program Behavior:
  176.  
  177.      The default behavior of the ChgBoot program as concerns automatically
  178.      rebooting, setting or clearing hidden and read-only file attributes,
  179.      saving a backup copy of the Autoexec.Bat and Config.Sys files, and
  180.      saving the boot-up configuration information can all be controlled
  181.      by setting switches within the ChgBoot.Cfg configuration file.
  182.  
  183. 6.  User Configurable Menu Lines And Help Lines:
  184.  
  185.      Each system configuration in the configuration file ChgBoot.Cfg has
  186.      a menu title and a help line defined by the user.  The menu title can
  187.      be up to 60 characters long, while the help line can be up to 80
  188.      characters long.
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195. 7.  Controllable Text Indenting In System Files:
  196.  
  197.      The program has three indenting modes set from within the ChgBoot.Cfg
  198.      configuration file.  These are no indenting, relative indenting, and
  199.      absolute indenting.  No indenting causes any strings in the configuration
  200.      file to be written to the system files starting at column 1.  Absolute
  201.      indenting causes the strings in the configuration file to be written to
  202.      the system files with the exact number of leading spaces that they had
  203.      in the configuration file.  Relative indenting writes the string with the
  204.      least number of leading spaces at column 1 in the system files, and then
  205.      the other strings are indented with respect to that string.
  206.  
  207. 8.  Use Of Comments In The ChgBoot.Cfg File:
  208.  
  209.      The '#' sign defines a comment in the ChgBoot.Cfg configuration file.
  210.      Any text to the right of a '#' comment sign is ignored by the program.
  211.  
  212. 9.  User Defined Editor:
  213.  
  214.      The program allows the user to define his or her own editor for use
  215.      while inside the program to edit the ChgBoot.Cfg configuration file.
  216.      Once the user has assigned the editor switch in the ChgBoot.Cfg file
  217.      with the path and name to the desired editor, the program will call
  218.      the editor and automatically load the ChgBoot.Cfg file into it to allow
  219.      changes to be made to the configuration file 'on the fly'.
  220.  
  221. 10.  Saving Boot Configuration Information:
  222.  
  223.      The program can save the current boot-up configuration in one of two
  224.      ways.  A line can be automatically appended to the Autoexec.Bat
  225.      file when written to set an environment variable that records the
  226.      current configuration.  Or, a one line text file can be written in the
  227.      same directory as the ChgBoot.Exe file is located that contains the
  228.      current boot-up configuration.  Then, when ChgBoot.Exe is next run, it
  229.      scans the recorded information and displays it in the menu screen.  If
  230.      If the user does not want the boot-up information recorded, this
  231.      feature can also be turned off.  When set to off, the menu display
  232.      simply shows a '?' for the current configuration.  This behavior is
  233.      controlled by a switch in the ChgBoot.Cfg configuration file.
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240. B.  Operation
  241.  
  242. 1.  Command Line Description:
  243.  
  244.      The command line to invoke the ChgBoot program is as follows:
  245.  
  246.                     ChgBoot [options]
  247.  
  248.      Where options are:
  249.  
  250.           /a+   Perform warm boot
  251.           /a-   Do not perform warm boot (default)
  252.           /f    Define ChgBoot.Cfg filename
  253.           /oX   Use configuration option letter 'X'
  254.                     Valid configuration options: 'a' ≤ X ≤ 'r'
  255.           -?    Help screen
  256.  
  257.      An example command line might be:
  258.  
  259.                     chgboot /a- /ob /fC:\Util\MyBoot.Cfg
  260.  
  261.      Note:  Command line options can use either a '/' or a '-' to denote
  262.      the switch.  Command line options are not case sensitive.
  263.  
  264.      This command line would write the second set ('b') of system files to
  265.      the root directory, would not perform a warm boot, and would use the
  266.      configuration file 'MyBoot.Cfg' found in the \Util directory.  Any other
  267.      options specified in the configuration file would also be used, and last,
  268.      any remaining unspecified options would use the program defaults.
  269.  
  270.      The lettering of the configuration options 'a' - 'r' corresponds to the
  271.      physical ordering of the individual system files within the configuration
  272.      file.  The first set of system files is 'a', the second 'b', etc.  There
  273.      is a limit of 18 configurations within an individual configuration file.
  274.      If there is a need for more than this, a second configuration file would
  275.      have to be written and specified from the command line.
  276.  
  277.      Any unrecognized options force a display of the command line help screen.
  278.  
  279. 2.  Running ChgBoot From Root Directory:
  280.  
  281.      This is the simplest way to set up the program.  Both the executable
  282.      file, ChgBoot.Exe, and the configuration file, ChgBoot.Cfg, are placed
  283.      in the root directory of the boot-up drive.  When run in this manner
  284.      it is not necessary to specify a configuration file or directory.
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291. 3.  Running ChgBoot From Another Directory:
  292.  
  293.      By default, the program looks for a configuration file name ChgBoot.Cfg
  294.      in the executable directory where ChgBoot.Exe is found, or in the root
  295.      directory of the current drive.  If the configuration file is not found
  296.      in either of these two directories, the directory or filename used for
  297.      the configuration file must be specified.  This can be done from the
  298.      command line or using the CHGBOOT environment variable.  Some examples
  299.      of this are:
  300.  
  301.                Set CHGBOOT=C:\Util
  302.  
  303.      The above line would normally be placed in the Autoexec.Bat file and
  304.      signifies that the program should use the default configuration
  305.      filename 'ChgBoot.Cfg' and that it will be found in the C:\Util
  306.      directory.  This same directory name could be passed in on the command
  307.      line:
  308.  
  309.                chgboot -fc:\util
  310.  
  311.      Note that the path can either have a trailing backslash
  312.      ('\') or not.  If the specified filename is not found, it will not
  313.      search the default directories.  An example of using a configuration
  314.      file with another filename would be:
  315.  
  316.                Set CHGBOOT=C:\Util\MyBoot.Cfg
  317.  
  318.      Again, if the configuration file uses the default filename 'ChgBoot.Cfg',
  319.      and it is located in the executable directory or the root directory, then
  320.      it is not necessary to specify a filename at the command line or in an
  321.      environment variable.
  322.  
  323. 4.  Running ChgBoot From Another Drive
  324.  
  325.      If the program is run from a drive other than the boot-up drive, it is
  326.      also necessary to specify which drive is the boot drive in the
  327.      configuration file.  This is done using the [BootDrv] keyword.  If the
  328.      boot drive were C:, the configuration line would be:
  329.  
  330.                [BootDrv]=C:
  331.  
  332. 5.  Running Other Programs Before Reboot:
  333.  
  334.      In order to run other programs prior to rebooting the machine, it is
  335.      necessary to use the [RunDos] keyword in the configuration file.  An
  336.      example of this might be:
  337.  
  338.                [RunDos]=PC-Cache /Flush
  339.  
  340.      This command would cause Central Points Software's PC-Cache (c) to be
  341.      flushed prior to rebooting the machine.
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348. III.  Organization Of The ChgBoot.Cfg Configuration File
  349.  
  350. The ChgBoot configuration file has a number of features to help manage having
  351. multiple machine configurations.  These are:
  352.  
  353. 1.  Comments:
  354.  
  355.      The comment in the ChgBoot configuration file is denoted by the '#' sign.
  356.      Any text after the '#' sign is ignored by the program.
  357.  
  358. 2.  Program Keywords:
  359.  
  360.      The following is a list of valid program keywords in use by the ChgBoot
  361.      program:
  362.  
  363.           [SystemStart]       Denotes the start of a new configuration
  364.           [SystemEnd]         Denotes the end of a configuration
  365.           [MenuTitle]         String to be displayed in menu
  366.           [HelpLine]          Help text to be displayed with menu item
  367.           [MacroStart]        Start of macro defines
  368.           [MacroEnd]          End of macro defines
  369.           [AutoStart]         Start of Autoexec.Bat file
  370.           [AutoEnd]           End of Autoexec.Bat file
  371.           [ConfigStart]       Start of Config.Sys file
  372.           [ConfigEnd]         End of Config.Sys file
  373.           [AutoBoot]          Determines whether warm boot is performed
  374.           [HideFiles]         Determines whether to hide system files
  375.           [RunDos]            Run DOS command prior to reboot
  376.           [BootDrv]           Location of boot drive (i.e., 'C:');
  377.           [LockFiles]         Set read only bit on system files
  378.           [BackUp]            Save back-up of system files
  379.           [Config]            Used to save the boot-up configuration info
  380.           [Indent]            Set system files indent behavior
  381.           [Editor]            Define editor to use when in program
  382.           [Include]           Include a specified text file in either the
  383.                               Autoexec.Bat or Config.Sys when writing them.
  384.  
  385.      Note:  Except for macro definitions, all keywords and keyword values are
  386.      case insensitive.  This means that the following declarations are legal
  387.      and identical as far as the program is concerned:
  388.  
  389.                               [AuTOBOOt]=oN
  390.                               [AutoBoot]=ON
  391.                               [autoboot]=on
  392.  
  393.      An explanation of the use of each of the program keywords follows.
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400. 3.  Defining A System Configuration Block
  401.  
  402.      The [SystemStart] and [SystemEnd] keywords define a configuration.
  403.      Each configuration must have the following keywords defined:
  404.  
  405.                               [SystemStart]
  406.                               [MenuTitle]
  407.                               [HelpLine]
  408.                               [AutoStart]
  409.                               [AutoEnd]
  410.                               [ConfigStart]
  411.                               [ConfigEnd]
  412.                               [SystemEnd]
  413.  
  414.      The [HelpLine] keyword is optional.  There must be no keywords other
  415.      than the [Include] keyword inside the [Auto...] or [Config...]
  416.      blocks.  If they are inside the [Auto...] or [Config...] blocks, the
  417.      keyword strings would be written into the system files and cause an error
  418.      at boot-up time.  The order of the [MenuTitle] and [HelpLine]
  419.      keywords are unimportant, as long as they are within the [System...]
  420.      block.  The text associated with a menu title need not be unique, and
  421.      can be up to 60 characters long.  An example would be:
  422.  
  423.           [MenuTitle]=Standard Configuration w/DOS Loaded High
  424.  
  425.      The text associated with the help line can be up to 80 characters long.
  426.      An example might be:
  427.  
  428.           [HelpLine]=Uses QEMM, SmartDrv Disk Cache, & 2M Byte Ram Disk
  429.  
  430.      Whenever the cursor is on the menu title, the help line will be displayed
  431.      at the bottom of the screen.  Macro definitions within menu titles or
  432.      help text will not be expanded.
  433.  
  434. 4.  Defining A Macro Block
  435.  
  436.      The [MacroStart] and [MacroEnd] keywords denote a block of
  437.      macro substitutions that are to be used in the system files.  The
  438.      format of a macro line is as follows:
  439.  
  440.            Identifier=Substitution Text
  441.  
  442.      An example might be:
  443.  
  444.            SHELL=Shell=C:\Dos\Command.Com /P /E:2048
  445.  
  446.      Where:
  447.  
  448.           'SHELL' is the macro identifier
  449.           'Shell=C:\Dos\Command.Com /P /E:2048' is the substitution text.
  450.  
  451.      The equal sign is used to define the end of the macro identifier.  There
  452.      must be an equal sign present or an error will occur.  There should be
  453.      no whitespace (<Tab> or <Space>) before or after the equal sign, or the
  454.      macro identifier or substitution string will also contain the same
  455.      whitespace.  If an error were made by leaving off the equal sign denoting
  456.      the end of the macro identifier and the identification string also
  457.      contained an equal sign, the macros would not be expanded correctly.  An
  458.      example might be:
  459.  
  460.           SHELL Shell=C:\Dos\Command.Com /P /E:2048
  461.  
  462.      This string would be incorrectly interpreted as:
  463.  
  464.           'SHELL Shell' is the macro identifier.
  465.           'C:\Dos\Command.Com  /P /E:2048' is the substitution string.
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.      In order to cause the defined macro to be expanded it must be
  473.      defined in the [Auto...] or [Config...] block as follows:
  474.  
  475.                               $(SHELL)
  476.  
  477.      There should be no comments in a macro definition.  There can be
  478.      multiple sets of [Macro...] blocks, but there is a limit of 256 total
  479.      macro definitions allowed in the program.  Only macros within an
  480.      [Auto...] or [Config...] block are expanded.  There is a limit of
  481.      256 characters imposed on the size of the macro string by the ChgBoot
  482.      program.  But, the size of the expanded string written to the
  483.      autoexec.bat or config.sys file may not exceed the DOS limit of 128
  484.      characters.  Macro identifiers are case sensitive.
  485.  
  486. 5.  Notes About The [Auto...] And [Config...] blocks
  487.  
  488.      Any text that is in an [Auto...] or [Config...] block (i.e., between
  489.      the [AutoStart] and [AutoEnd] or between the [ConfigStart] and [ConfigEnd]
  490.      keywords) will be be copied verbatim into the appropriate system
  491.      configuration file.  This includes any blank lines.
  492.  
  493.      The maximum number of machine configurations is 18.  This is the
  494.      limit on the number of choices that can be displayed by the menu.
  495.  
  496. 6.  Controlling Default Program Behavior
  497.  
  498.      There are four boolean switches that may be used to control default
  499.      program behavior.  They are:
  500.  
  501.                               [AutoBoot]
  502.                               [HideFiles]
  503.                               [LockFiles]
  504.                               [BackUp]
  505.  
  506.      Each switch may set the option to 'ON' or 'OFF'.  Each keyword must be
  507.      defined outside of any [Auto...] or [Config...] blocks.
  508.  
  509.      To stop the program from automatically rebooting the machine after
  510.      writing the new system files to the root directory, the [AutoBoot]
  511.      switch would be set:
  512.  
  513.                               [AutoBoot]=OFF
  514.  
  515.      This sets the default behavior of the program.  If the [AutoBoot]
  516.      switch is set to 'ON', then the program performs a warm boot after
  517.      writing the new configuration files to the root directory.  If it is
  518.      set to 'OFF', then the program only writes the new files to the root
  519.      directory, it does not reboot the machine.  This switch may be over-
  520.      ridden from the command line with the '/a+' or '/a-' option.  If the
  521.      [AutoBoot] switch is not set from the configuration file or the
  522.      command line, the program defaults to not performing a warm boot.  The
  523.      [AutoBoot] switch can also be toggled from the menu screen by using
  524.      the '<Alt-A>' key.
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.      The [HideFiles] switch may be set to on or off as in:
  532.  
  533.                               [HideFiles]=ON
  534.  
  535.      This will set the default behavior of the program.  If the
  536.      [HideFiles] switch is set to 'ON', the program will set the hidden
  537.      file attribute bit on the Autoexec.Bat and Config.Sys files to hide
  538.      them in the root directory.
  539.  
  540.      The [LockFiles] keyword causes the program to set the read-only
  541.      file attribute bit on the new Autoexec.Bat and Config.Sys files.
  542.  
  543.      The [BackUp] keyword causes the program to rename the old
  544.      Autoexec.Bat and Config.Sys files to '*.Bak'.
  545.  
  546.      There must be no whitespace between between an identifier and the
  547.      switch associated with it.  The following declarations are illegal:
  548.  
  549.                               [HideFiles] = ON
  550.                               [AutoBoot]= OFF
  551.  
  552.      The remaining program keywords are:
  553.  
  554.                               [RunDos]
  555.                               [BootDrv]
  556.                               [Config]
  557.                               [Indent]
  558.                               [Include]
  559.                               [Editor]
  560.  
  561.      The [RunDos] keyword is used to run a DOS command prior to rebooting
  562.      the machine.  Up to 18 DOS commands can be executed prior to the reboot
  563.      being performed.  An example of a RunDos command might be causing a disk
  564.      cache to be flushed to insure that the new system files are actually
  565.      written to the root directory before the warm boot occurs.  The command
  566.      to flush Central Point Software's PC-Cache would be:
  567.  
  568.                [RunDos]=PC-Cache /Flush > nul
  569.  
  570.      Where the '> nul' is sending the PC-Cache confirmation message to
  571.      the 'nul' device.  This is assuming that the directory where PC-Cache
  572.      is found is on the path.
  573.  
  574.      The [BootDrv] keyword is used when running ChgBoot.Exe from a drive
  575.      different than the boot-up drive.  If the boot-up drive were 'C:', then
  576.      the following declaration would allow ChgBoot to run from another
  577.      drive, even a floppy if necessary:
  578.  
  579.                               [BootDrv]=C:
  580.  
  581.      As above, these keywords initialize to a string.  Any leading spaces
  582.      in the string will be included.  This means that the following
  583.      declaration would cause an error:
  584.  
  585.                               [BootDrv]= C:
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.      because the boot drive variable would be initialized to ' C:', and this
  593.      drive does not exist.
  594.  
  595.      The [Config] keyword is used to tell the program how to save and get
  596.      the current boot-up configuration.  The three legal values for [Config]
  597.      are:  'Off', 'Textfile', & 'Environment':
  598.  
  599.                               [Config]=Off
  600.  
  601.      This tells ChgBoot not to save the configuration information.  Whenever
  602.      the program is run, the menu will display a '?' next to the boot-up
  603.      configuration string.
  604.  
  605.                               [Config]=Textfile
  606.  
  607.      This tells ChgBoot to save the configuration information in a textfile
  608.      located in the same directory as the ChgBoot.Exe file.  Then when the
  609.      program is run, the current boot-up configuration letter will be
  610.      displayed at the menu.  Upon running the program for the first time after
  611.      setting this option, the program will display a message "Unable to open
  612.      Boot.Cfg file".  This is normal because the textfile is only written at
  613.      the time that the system files are written.  The next time that the
  614.      program is entered, the menu will display the correct information.  The
  615.      only disadvantage with using the 'Textfile' option is that the textfile
  616.      is written when the new system files are written, not when the system
  617.      reboots.  Therefore, if the system files are written without rebooting,
  618.      the boot-up configuration information will actually reflect how the
  619.      system will be rebooted the next time.
  620.  
  621.                               [Config]=Environment
  622.  
  623.      This tells ChgBoot to append a line to the end of the Autoexec.Bat file.
  624.      The line appended is:  "Set Config=X", where 'X' is whichever
  625.      configuration has been chosen.  Then, when the system reboots, the
  626.      Autoexec.Bat file sets the environment variable.  The next time
  627.      ChgBoot is run, it looks for the environment variable to determine the
  628.      current boot-up configuration.
  629.  
  630.      The [Indent] keyword is used to control the line indenting behavior
  631.      when writing the Autoexec.Bat and Config.Sys files to the root directory.
  632.      The allowable values for [Indent] are:  'Off', 'Relative', &
  633.      'Absolute'.
  634.  
  635.                               [Indent]=Off
  636.  
  637.      This tells the program to ignore any leading spaces in the strings in
  638.      the ChgBoot.Cfg file when writing them to the Autoexec.Bat or
  639.      Config.Sys files.  Each string contained between the [AutoStart]
  640.      keyword and the [AutoEnd] keyword will be written into the Autoexec.Bat
  641.      file starting at column #1.  Each string contained between the
  642.      [ConfigStart] and [ConfigEnd] keywords will be written into the
  643.      Config.Sys file starting at column #1.
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.                               [Indent]=Absolute
  651.  
  652.      This tells the program to include all leading spaces in any strings
  653.      defined in the configuration file in the Autoexec.Bat or Config.Sys
  654.      files.  If a string contained between the [AutoStart] and
  655.      [AutoEnd] keywords starts at column #7, then the string will be
  656.      written to the Autoexec.Bat file with 6 spaces and starting at column
  657.      #7.  The same is true for the strings defined between the [ConfigStart]
  658.      and [ConfigEnd] keywords.
  659.  
  660.                               [Include]=Relative
  661.  
  662.      This tells the program to use relative indenting on the strings.  This
  663.      works by taking the string with the fewest leading spaces and writing
  664.      it to the appropriate system file starting at column #1.  Any other
  665.      strings are indented relative to it.  As an example:
  666.  
  667.      [ConfigStart]
  668.           Break=On
  669.           Buffers=20 /X
  670.           Files=30
  671.           Shell=C:\Dos\Command.Com /P /E:512
  672.                Device=C:\Dos\Qemm386.Sys Ram X=C800-CFFF
  673.                Device=C:\Dos\LoadHi.Sys /R:1 C:\Dos\RamDrive.Sys 4096 /E
  674.                Device=C:\Dos\LoadHi.Sys /R:3 C:\Dos\Ansi.Sys
  675.           Dos=High
  676.      [ConfigEnd]
  677.  
  678.      The line "Break=On" would be written at column #1 in the Config.Sys
  679.      file as would all the strings lined up with it.  The three "Device="
  680.      strings would appear indented the same amount as shown here, relative
  681.      to the other lines.
  682.  
  683.      Note that the program does not expand tabs, it simply substitutes one
  684.      space for each tab found.  Therefore, do not have your editor write
  685.      tabs to the ChgBoot configuration file or the indentation will not be
  686.      correct.
  687.  
  688.      The final keyword [Editor] is used to define the editor that the
  689.      ChgBoot program will use to interactively edit the ChgBoot.Cfg file.
  690.      If you are using DOS 5.0 and wanted to use the DOS editor, the correct
  691.      command would be (assuming DOS Edit is located in the C:\Dos directory):
  692.  
  693.                               [Editor]=C:\Dos\Edit
  694.  
  695.      The ChgBoot program will append the name of the current configuration
  696.      file onto the string "C:\Dos\Edit" and spawn a process to run the editor.
  697.      If the default configuration filename were used, the string passed to DOS
  698.      would be:  "C:\Dos\Edit ChgBoot.Cfg".  If your editor allows the
  699.      specification of multiple files on its command line, then you could also
  700.      use the [Editor] keyword to load the current Autoexec.Bat and
  701.      Config.Sys files into the editor as well as the ChgBoot.Cfg file.
  702.      If your editor were "Multi-Edit", this could be done by specifying:
  703.  
  704.                     [Editor]=ME C:\Autoexec.Bat C:\Config.Sys
  705.  
  706.      Then when you invoked the editor from within the ChgBoot program, it
  707.      would automatically have all three files loaded.  The DOS 5.0 Edit
  708.      editor does not allow the specification of multiple filenames on its
  709.      command line.
  710.